// 请求跟路径
import path from "../utils/path.js";
// 导入网络请求
import http from "../utils/request.js";

// 数据请求接口
const api = {
	/**
	 * @returns 请求轮播图数据
	 */
	getSliders() {
		return http.get(path.baseUrl + "/api/homes/slides/");
	},
	/**
	 * @returns 请求分类导航数据
	 */
	getNavCates() {
		return http.get(path.baseUrl + "/api/homes/getNavCate/");
	},
	/**
	 * @returns 请求超值爆款数据
	 */
	getHotNewGoods() {
		return http.get(path.baseUrl + "/api/homes/getHotNewGoods/");
	},
	/**
	 * @returns 请求获取公告数据
	 */
	getShopNews() {
		return http.get(path.baseUrl + "/api/homes/details/getNews/");
	},
	/**
	 * @returns 请求一级分类数据
	 */
	getOneCate() {
		return http.get(path.baseUrl + "/api/goods_cate/v1/getOneCate/");
	},
	/**
	 * @param {Object} phone 手机号
	 * @returns 注册验证码
	 */
	getRegisterCode(phone) {
		return http.get(path.baseUrl + `/api/users/sendRegCode/?phone=${phone}`);
	},
	/**
	 * @param {Object} data 注册信息
	 * @returns 注册
	 */
	register(data) {
		return http.post(path.baseUrl + "/api/users/register/", data);
	},
	/**
	 * @param {Object} phone 手机号
	 * @returns 登录验证码
	 */
	getLogCode(phone) {
		return http.get(path.baseUrl + `/api/users/sendLogCode/?phone=${phone}`);
	},
	/**
	 * @param {Object} data 登录信息
	 * @returns 账号登录
	 */
	zhLogin(data) {
		return http.post(path.baseUrl + "/api/users/login/", data);
	},
	/**
	 * @param {Object} data 手机号和验证码
	 * @returns 验证码登录
	 */
	codeLogin(data) {
		return http.post(path.baseUrl + "/api/users/codeLogin/", data);
	},
	/**
	 * @returns 获取登录用户信息
	 */
	getUserInfo() {
		return http.post(path.baseUrl + "/api/userInfo/getUserInfo/");
	},
	/**
	 * @returns 获取订单中心数据
	 */
	getOrderCen() {
		return http.post(path.baseUrl + "/api/userInfo/getOrderCen/");
	},
	/**
	 * @returns 获取我的服务数据
	 */
	getMyServe() {
		return http.post(path.baseUrl + "/api/userInfo/getMyServe/");
	},
	/**
	 * @param {Object} data 用户信息
	 * @returns 更改用户基本信息
	 */
	setUserInfo(data) {
		return http.post(path.baseUrl + "/api/userInfo/updateUser/", data);
	},
	/**
	 * @param {Object} email 邮箱号
	 * @returns 获取邮箱验证码
	 */
	getEmailCode(email) {
		return http.get(path.baseUrl + `/api/userInfo/sendEmailCode?email=${email}`);
	},
	/**
	 * @param {Object} data 邮箱号和邮箱验证码
	 * @returns 绑定邮箱验证码
	 */
	bindEmail(data) {
		return http.post(path.baseUrl + `/api/userInfo/bingEmail/`, data);
	},
	/**
	 * @param {Object} phone 手机号
	 * @returns 发送修改密码验证码
	 */
	sendPwd(phone) {
		return http.get(path.baseUrl + `/api/userInfo/sendPwdCode/?phone=${phone}`);
	},
	/**
	 * @param {Object} data 手机号、旧密码和新密码
	 * @returns 修改密码
	 */
	updatePwd(data) {
		return http.post(path.baseUrl + "/api/userInfo/userUpdatepwd/", data);
	},
	/**
	 * @returns 获取热门搜索关键词
	 */
	getHotSea() {
		return http.get(path.baseUrl + "/api/goods/getHotSea/");
	},
	/**
	 * @param {Object} query 搜索商品
	 */
	searchGoods(query) {
		return http.get(path.baseUrl + "/api/goods/seaGoods/", query);
	},
	/**
	 * @param {Object} pushId 推送id
	 * @param {Object} data 分页数据
	 * @returns 获取商品推荐商品
	 */
	getPushGoods(pushId, data) {
		return http.get(path.baseUrl + `/api/goods/push/list/${pushId}`, data);
	},
	/**
	 * @param {Object} pushId 超值爆款id
	 * @param {Object} data 分页数据
	 * @returns 获取超值爆款商品
	 */
	getHotGoods(pushId, data) {
		return http.get(path.baseUrl + `/api/goods/hot/list/${pushId}`, data);
	},
	/**
	 * @param {Object} navId 一级分类id
	 * @param {Object} data
	 * @returns 获取一级分类商品
	 */
	getCateGoods(navId, data) {
		return http.get(path.baseUrl + `/api/goods/cate_id/list/${navId}`, data);
	},
	/**
	 * @param {Object} data 收货地址信息
	 * @returns 添加收货地址
	 */
	address(data) {
		return http.post(path.baseUrl + "/api/userInfo/edit/address/", data);
	},
	/**
	 * @returns 获取收货地址
	 */
	getAddress() {
		return http.post(path.baseUrl + "/api/userInfo/getAddress/");
	},
	/**
	 * @param {Object} data 地址id
	 * @returns 修改默认收货地址
	 */
	setDetail(data) {
		return http.post(path.baseUrl + "/api/userInfo/address/default/set/", data);
	},
	/**
	 * @param {Object} data 地址id
	 * @returns 删除地址
	 */
	deleteAddr(data) {
		return http.post(path.baseUrl + "/api/userInfo/delete/address/", data);
	},
	/**
	 * @param {Object} data 商品id
	 * @returns 获取单个商品信息
	 */
	getGoodsDetail(data) {
		return http.get(path.baseUrl + "/api/goods/detail", data);
	},
	/**
	 * @param {Object} goodsId 商品id
	 * @returns 收藏商品
	 */
	scGoods(goodsId) {
		return http.post(path.baseUrl + "/api/goods/sc_goods/?goodsId=" + goodsId);
	},
	/**
	 * @param {Object} goodsId 商品id
	 * @returns 取消收藏
	 */
	qxGoods(goodsId) {
		return http.post(path.baseUrl + "/api/goods/qx_goods/?goodsId=" + goodsId);
	},
	/**
	 * @returns 获取全部收藏的商品
	 */
	collectGoods() {
		return http.post(path.baseUrl + "/api/goods/collect/");
	},
	/**
	 * @param {Object} goodsId 商品id
	 * @returns 加入购物车
	 */
	addCart(goodsId) {
		return http.post(path.baseUrl + "/api/goods/addCart/?goodsId=" + goodsId);
	},
	/**
	 * @param {Object} goodsId 商品id
	 * @returns 移除购物车商品
	 */
	deleteCart(goodsId) {
		return http.get(path.baseUrl + "/api/goods/deleteCart/?goodsId=" + goodsId);
	},
	/**
	 * @returns 获取购物车商品
	 */
	getCart() {
		return http.post(path.baseUrl + "/api/goods/getCart/");
	},
	/**
	 * @param {Object} data 下单商品
	 * @returns 生成订单 
	 */
	order(data) {
		return http.post(path.baseUrl + "/pay/payment", data);
	},
	/**
	 * @param {Object} order_id 订单号
	 * @returns 获取订单
	 */
	getOrder(query) {
		return http.get(path.baseUrl + `/pay/get_order`, query);
	},
	/**
	 * 获取不同状态的订单
	 * @param {Object} status 订单状态
	 */
	orderStatus(query) {
		return http.get(path.baseUrl + `/pay/get_order_status`, query);
	},
	pay(query) {
		return http.get(path.baseUrl + `/pay/payGoods`, query);
	},
	sidGoods(query) {
		return http.get(path.baseUrl + `/api/goods/sid`, query);
	}


}

// 导出数据
export default api;